# !/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
===========================
@Time : 2022/8/27 0027 23:53
@Author : 测试开发工程师
@File : 4. 抽象工厂.hasattr_demo.py
@Software: PyCharm
============================
"""

# -----------问题： 如果存在多个公司都要封装，比如：A ，B，C，D.... 公司都要封装自己的工厂，就要封装 n 个 工厂类
# ---------解决方案：可以使用 抽象工厂解决问题，每个工厂类可以创建多个实例，比如 JsonParseRuleFactory,可以创建 A, B , C公司的实例


class IParseRuleFactory:
    def a_ceeate_parse(self):
        raise ValueError()

    def b_ceeate_parse(self):
        raise ValueError()

    def c_ceeate_parse(self):
        raise ValueError()


# 实现时候，一个工厂类可以生成多个公司的实例
class JsonParseRuleFactory(IParseRuleFactory):
    def a_ceeate_parse(self):
        pass

    def b_ceeate_parse(self):
        pass

    def c_ceeate_parse(self):
        pass